import request from '@/utils/request'
export const rolePrefix = '/sys/role/'

// 查询角色列表
export function listRole(query) {
  return request({
    url: rolePrefix,
    method: 'get',
    params: query
  })
}

// 查询角色详细
export function getRole(id) {
  return request({
    url: rolePrefix + id + '/',
    method: 'get'
  })
}


// 新增角色
export function addRole(data) {
  return request({
    url: rolePrefix,
    method: 'post',
    data: data
  })
}

// 修改角色
export function updateRole(data) {
  return request({
    url: rolePrefix + data.id + '/',
    method: 'put',
    data: data
  })
}

// 角色状态修改
export function changeRoleStatus(data) {
  return request({
    url: rolePrefix + `${data.id}/change_status/`,
    method: 'put',
    data: data
  })
}

// 删除角色
export function delRole(id) {
  return request({
    url: rolePrefix + id + '/',
    method: 'delete'
  })
}

// 根据角色ID查询菜单下拉树结构
export function roleMenuTreeselect(id) {
  return request({
    url: rolePrefix + `${id}/get_menus/`,
    method: 'get'
  })
}

// 根据角色ID查询部门树结构
export function roleDeptTreeselect(id) {
  return request({
    url: rolePrefix + `${id}/get_depts/`,
    method: 'get'
  })
}

// 查询角色已授权用户列表
export function relatedUserList(query) {
  return request({
    url: rolePrefix + 'get_related/',
    method: 'get',
    params: query
  })
}

// 查询角色未授权用户列表
export function unrelatedUserList(query) {
  return request({
    url: rolePrefix + 'get_unrelated/',
    method: 'get',
    params: query
  })
}

// 添加角色对应用户的授权
export function authUserAdd(data) {
  return request({
    url: rolePrefix + 'add_unrelated/',
    method: 'put',
    data: data
  })
}

// 删除角色对应用户的授权
export function authUserRemove(data) {
  return request({
    url: rolePrefix + 'remove_related/',
    method: 'put',
    data: data
  })
}


